package com.jrx.anytxn.param.service.cardRoll;

import com.jrx.anytxn.common.exception.TxnException;
import com.jrx.anytxn.i18n.response.TxnPage;
import com.jrx.anytxn.param.entity.PrCardRollDetailInfo;
import com.jrx.anytxn.param.entity.PrCardRollInfo;
import com.jrx.anytxn.param.entity.PrCardRollToleadRecord;

import java.util.List;

/**
 * 卡券管理 业务接口
 *
 * @author : SGtai
 * 2023/08/29
 */
public interface ICardRollService {

    TxnPage<PrCardRollInfo> findInfoPageByTenantId(Integer pageNum, Integer pageSize, PrCardRollInfo prCardRollInfo) throws TxnException;

    TxnPage<PrCardRollDetailInfo> findDetailPageByTenantId(Integer pageNum, Integer pageSize, PrCardRollDetailInfo rollDetailInfo) throws TxnException;

    PrCardRollInfo modifyCardRollInfo(PrCardRollInfo prCardRollInfo);

    Boolean removeByTenIdAndCardRollId(String cardRollId,String tenantId) throws TxnException;

    PrCardRollInfo batchSaveQrcodes(List<List<String>> list, String tenantId, String operator,String cardRollId,StringBuffer tips) throws TxnException;

    TxnPage<PrCardRollToleadRecord> findToleadRecordByTenantId(Integer pageNum, Integer pageSize, PrCardRollToleadRecord prCardRollToleadRecord) throws TxnException;

    PrCardRollInfo getCardRollInfoById(String tenantId, String id) throws TxnException;

    PrCardRollInfo addCardRollInfo(PrCardRollInfo prCardRollInfo) throws TxnException;

    PrCardRollDetailInfo rightsPassExtract(PrCardRollDetailInfo prCardRollInfo) throws TxnException;
}
